﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
using ENT.PM.Core.Lookup;
using ENT.PM.Core;
using ENT.PM.Core.Proyecto;
using Coolite.Ext.Web;
using ENT.PM.Core.Core;

namespace ent_pm.Estadisticas
{
    public partial class AvanceProyectos : System.Web.UI.Page
    {
        protected void Page_Load(object sender, EventArgs e)
        {
            if (!IsPostBack)
            {
                EstadoProyectoLookup.InvalidateCache();
                TipoLookup.InvalidateCache();
                EjesLookup.InvalidateCache();
                ProgramaLookup.InvalidateCache();
                StoreEstado.DataSource = EstadoProyectoLookup.GetNameValueList();
                StoreEstado.DataBind();
                StoreTipo.DataSource = TipoLookup.GetNameValueList();
                StoreTipo.DataBind();
                StoreEje.DataSource = EjesLookup.GetNameValueList();
                StoreEje.DataBind();
                StoreProgramas.DataSource = ProgramaLookup.GetNameValueList();
                StoreProgramas.DataBind();
            }
        }

        protected void btnBuscar_Click(object sender, AjaxEventArgs e)
        {
            try
            {
                var criterio = ProyectoCriterio.NewProyectoCriterio();
                if (cbxProgramas.SelectedIndex == -1)
                    criterio.ProgramaId = 0;
                else
                    criterio.ProgramaId = Convert.ToInt32(cbxProgramas.SelectedItem.Value);

                if (cbxEje.SelectedIndex == -1)
                    criterio.EjeId = 0;
                else
                    criterio.EjeId = Convert.ToInt32(cbxEje.SelectedItem.Value);

                //if (cbxCategorias.SelectedIndex == -1)
                //    criterio.TipoId = 0;
                //else
                //    criterio.TipoId = Convert.ToInt32(cbxCategorias.SelectedItem.Value);

                if (cbxEstado.SelectedIndex == -1)
                    criterio.EstadoId = 0;
                else
                    criterio.EstadoId = Convert.ToInt32(cbxEstado.SelectedItem.Value);

                criterio.Nombre = txtNombrePrograma.Text;

                StoreProyectos.DataSource = ProyectoAvanceLista.GetProyectoAvanceLista(criterio);
                StoreProyectos.DataBind();
            }
            catch (Exception ex)
            {
                Util.RegistarLog(ex.ToString());
            }
        }
    }
}
